home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / SLAX 6.0.8 / slax-6.0.8.iso / slax / base / 006-devel.lzm / usr / include / kate / pluginmanager.h < prev    next >
Encoding:
C/C++ Source or Header  |  2005-10-10  |  2.2 KB  |  71 lines

  1. /* This file is part of the KDE project
  2.    Copyright (C) 2001 Christoph Cullmann <cullmann@kde.org>
  3.    Copyright (C) 2002 Joseph Wenninger <jowenn@kde.org>
  4.  
  5.    This library is free software; you can redistribute it and/or
  6.    modify it under the terms of the GNU Library General Public
  7.    License version 2 as published by the Free Software Foundation.
  8.  
  9.    This library is distributed in the hope that it will be useful,
  10.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  12.    Library General Public License for more details.
  13.  
  14.    You should have received a copy of the GNU Library General Public License
  15.    along with this library; see the file COPYING.LIB.  If not, write to
  16.    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
  17.    Boston, MA 02110-1301, USA.
  18. */
  19.  
  20. #ifndef _KATE_PLUGINMANAGER_INCLUDE_
  21. #define _KATE_PLUGINMANAGER_INCLUDE_
  22.  
  23. #include <qobject.h>
  24. #include <kurl.h>
  25.  
  26. namespace Kate
  27. {
  28. /** This interface provides access to the Kate Plugin Manager.
  29. */
  30. class KDE_EXPORT PluginManager : public QObject
  31. {
  32.   friend class PrivatePluginManager;
  33.  
  34.   Q_OBJECT
  35.  
  36.   public:
  37.     PluginManager ( void *pluginManager  );
  38.     virtual ~PluginManager ();
  39.  
  40.   public:
  41.     /** if the plugin with the library name "name" is loaded, a pointer to that plugin is returned */
  42.     class Plugin *plugin(const QString &name);
  43.  
  44.     /** return true, if plugin is known to kate (either loaded or not loaded)
  45.      *
  46.      * This method is not used yet
  47.      */
  48.     bool pluginAvailable(const QString &name);
  49.  
  50.     /** tries loading the specified plugin and returns a pointer to the new plugin or 0
  51.      *  if permanent is true (default value) the plugin will be loaded at the next kate startup
  52.      *
  53.      * This method is not used yet
  54.      */
  55.     class Plugin *loadPlugin(const QString &name,bool permanent=true);
  56.  
  57.     /** unload the specified plugin. If the value permanent is true (default value), the plugin will not be
  58.      * loaded on kate's next startup. Even if it had been loaded with permanent=true.
  59.      *
  60.      * This method is not used yet
  61.      */
  62.     void unloadPlugin(const QString &name,bool permanent=true);
  63.  
  64.   private:
  65.     class PrivatePluginManager *d;
  66. };
  67.  
  68. }
  69.  
  70. #endif
  71.